简单起见,我们在玩转 AOSP 之系统 App 源码添加 (opens new window)中添加的系统 App 的基础上做修改。
接着将 MainActivity.java
源码修改如下:
package com.yuandaima.firstsystemapp;
import android.app.Activity;
import android.os.Bundle;
import android.os.HelloHal;
import android.content.Context;
import android.util.Log;
import android.os.RemoteException;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
HelloHal helloHal = (HelloHal)getSystemService(Context.HELLO_SERVICE);
try {
helloHal.write("nihao");
Log.d("yuandaima_log",helloHal.read());
} catch (RemoteException e) {
e.printStackTrace();
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
最后编译运行模拟器:
source build/envsetup.sh
lunch rice14-eng
emulator -kernel ~/Project/kernel/goldfish/arch/x86_64/boot/bzImage
1
2
3
2
3
然后运行 App,查看 log:
adb shell logcat | grep yuandaima_log
1
完事儿。